package taller.xml.parser;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import taller.dataLayer.vo.ItemSolicitudCompraVO;
import taller.dataLayer.vo.SolicitudCompraVO;

import com.thoughtworks.xstream.annotations.XStreamAlias;

@XStreamAlias("SolicitudCompra")
public class SolicitudCompraParser {

	private Integer numero;
	private Date fecha;
	private Integer taller;
	
	@XStreamAlias("Items")
	private List<ItemSolicitudCompraParser> items;
	
	public SolicitudCompraVO getSolicitudCompraVO() {
		SolicitudCompraVO solicitudCompraVO = new SolicitudCompraVO();
		solicitudCompraVO.setNumero(this.numero);
		solicitudCompraVO.setNumeroTaller(this.taller);
		
		solicitudCompraVO.setFecha(this.fecha);
		
		List<ItemSolicitudCompraVO> itemsSolicitudCompra = new ArrayList<ItemSolicitudCompraVO>();
		for (ItemSolicitudCompraParser itemParser : this.items) {
			itemsSolicitudCompra.add(itemParser.getItemSolicitudCompraVO());
		}
		solicitudCompraVO.setItems(itemsSolicitudCompra);
		
		return solicitudCompraVO;
	}
	
	public SolicitudCompraParser(SolicitudCompraVO solicitud){
		this.numero = solicitud.getNumero();
		this.fecha = solicitud.getFecha();
		this.taller = solicitud.getNumeroTaller();
		
		this.items = new ArrayList<ItemSolicitudCompraParser>();
		for (ItemSolicitudCompraVO itemSol : solicitud.getItems()) {
			items.add(new ItemSolicitudCompraParser(itemSol));
		}
	}

	public Integer getNumero() {
		return numero;
	}

	public void setNumero(Integer numero) {
		this.numero = numero;
	}

	public Date getFecha() {
		return fecha;
	}

	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	public Integer getTaller() {
		return taller;
	}

	public void setTaller(Integer taller) {
		this.taller = taller;
	}

	public List<ItemSolicitudCompraParser> getItems() {
		return items;
	}

	public void setItems(List<ItemSolicitudCompraParser> items) {
		this.items = items;
	}
	
}
